home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1992 June: ROMin Holiday / ADC Developer CD (1992-06) (''ROMin Holiday'')_iso / Developer Connection - 06-1992.iso / Development Platforms / Apple II / Essentials / MPW IIGS Interfaces / CIIGSIncludes / GSOS.h < prev    next >
Encoding:
C/C++ Source or Header  |  1990-04-03  |  20.9 KB  |  610 lines  |  [TEXT/MPS ]

  1. /********************************************
  2. ; File: GSOS.h
  3. ;
  4. ;
  5. ; Copyright Apple Computer, Inc.1986-90
  6. ; All Rights Reserved
  7. ;
  8. ********************************************/
  9. #ifndef __TYPES__
  10. #include <TYPES.h>
  11. #endif
  12.  
  13. #ifndef __GSOS__
  14. #define __GSOS__
  15.  
  16.  
  17. /*
  18.     Read/Write enable bit Codes
  19.     for CreateRec/OpenRec access and requestAccess fields
  20. */
  21.  
  22. #define readEnableAllowWrite 0x0000
  23. #define readEnable 0x0001
  24. #define writeEnable 0x0002
  25. #define readWriteEnable 0x0003
  26. #define fileInvisible 0x0004  /* Invisible bit */
  27. #define backupNeeded 0x0020  /* backup needed bit: CreateRec/ OpenRec access  field. (Must be 0 in requestAccess field ) */
  28. #define renameEnable 0x0040  /* rename enable bit: CreateRec/ OpenRec access and requestAccess fields */
  29. #define destroyEnable 0x0080  /* destroy enable  bit: CreateRec/ OpenRec access and requestAccess fields */
  30. #define startPlus 0x0000  /* base -> setMark = displacement */
  31. #define eofMinus 0x0001  /* base -> setMark = eof - displacement */
  32. #define markPlus 0x0002  /* base -> setMark = mark + displacement */
  33. #define markMinus 0x0003  /* base -> setMark = mark - displacement */
  34.  
  35. /* cachePriority Codes */
  36. #define cacheOff 0x0000  /* do not cache blocks invloved in this read */
  37. #define cacheOn 0x0001  /* cache blocks invloved in this read if possible */
  38.  
  39. /* Error Codes */
  40. #define badSystemCall 0x0001  /* bad system call number */
  41. #define invalidPcount 0x0004  /* invalid parameter count */
  42. #define gsosActive 0x0007  /* GS/OS already active */
  43. #ifndef devNotFound  /* device not found */
  44. #define devNotFound 0x10
  45. #endif
  46. #define invalidDevNum 0x11  /* invalid device number */
  47. #define drvrBadReq 0x20  /* bad request or command */
  48. #define drvrBadCode 0x0021  /* bad control or status code */
  49. #define drvrBadParm 0x0022  /* bad call parameter */
  50. #define drvrNotOpen 0x0023  /* character device not open */
  51. #define drvrPriorOpen 0x0024  /* character device already open */
  52. #define irqTableFull 0x0025  /* interrupt table full */
  53. #define drvrNoResrc 0x0026  /* resources not available */
  54. #define drvrIOError 0x0027  /* I/O error */
  55. #define drvrNoDevice 0x0028  /* device not connected */
  56. #define drvrBusy 0x0029  /* call aborted; driver is busy */
  57. #define drvrWrtProt 0x002B  /* device is write protected */
  58. #define drvrBadCount 0x002C  /* invalid byte count */
  59. #define drvrBadBlock 0x002D  /* invalid block address */
  60. #define drvrDiskSwitch 0x002E  /* disk has been switched */
  61. #define drvrOffLine 0x002F  /* device off line/ no media present */
  62. #define badPathSyntax 0x0040  /* invalid pathname syntax */
  63. #define invalidRefNum 0x0043  /* invalid reference number */
  64. #ifndef pathNotFound  /* subdirectory does not exist */
  65. #define pathNotFound 0x44
  66. #endif
  67. #define volNotFound 0x0045  /* volume not found */
  68. #ifndef fileNotFound  /* file not found */
  69. #define fileNotFound 0x0046
  70. #endif
  71. #define dupPathname 0x0047  /* create or rename with existing name */
  72. #define volumeFull 0x0048  /* volume full error */
  73. #define volDirFull 0x0049  /* volume directory full */
  74. #define badFileFormat 0x004A  /* version error (incompatible file format) */
  75. #ifndef badStoreType  /* unsupported (or incorrect) storage type */
  76. #define badStoreType 0x004B
  77. #endif
  78. #ifndef eofEncountered  /* end-of-file encountered */
  79. #define eofEncountered 0x004C
  80. #endif
  81. #define outOfRange 0x004D  /* position out of range */
  82. #define invalidAccess 0x004E  /* access not allowed */
  83. #define buffTooSmall 0x004F  /* buffer too small */
  84. #define fileBusy 0x0050  /* file is already open */
  85. #define dirError 0x0051  /* directory error */
  86. #define unknownVol 0x0052  /* unknown volume type */
  87. #ifndef paramRangeErr  /* parameter out of range */
  88. #define paramRangeErr 0x0053
  89. #endif
  90. #define outOfMem 0x0054  /* out of memory */
  91. #define dupVolume 0x0057  /* duplicate volume name */
  92. #define notBlockDev 0x0058  /* not a block device */
  93. #ifndef invalidLevel  /* specifield level outside legal range */
  94. #define invalidLevel 0x0059
  95. #endif
  96. #define damagedBitMap 0x005A  /* block number too large */
  97. #define badPathNames 0x005B  /* invalid pathnames for ChangePath */
  98. #define notSystemFile 0x005C  /* not an executable file */
  99. #define osUnsupported 0x005D  /* Operating System not supported */
  100. #ifndef stackOverflow  /* too many applications on stack */
  101. #define stackOverflow 0x005F
  102. #endif
  103. #define dataUnavail 0x0060  /* Data unavailable */
  104. #define endOfDir 0x0061  /* end of directory has been reached */
  105. #define invalidClass 0x0062  /* invalid FST call class */
  106. #define resForkNotFound 0x0063  /* file does not contain required resource */
  107. #define invalidFSTID 0x0064  /* error - FST ID is invalid */
  108. #define devNameErr 0x0067  /* device exists with same name as replacement name */
  109. #define resExistsErr 0x0070  /* cannot expand file, resource already exists */
  110. #define resAddErr 0x0071  /* cannot add resource fork to this type file */
  111.  
  112. /* fileSys IDs */
  113. #define proDOSFSID 0x0001  /* ProDOS/SOS  */
  114. #define dos33FSID 0x0002  /* DOS 3.3 */
  115. #define dos32FSID 0x0003  /* DOS 3.2 */
  116. #define dos31FSID 0x0003  /* DOS 3.1 */
  117. #define appleIIPascalFSID 0x0004  /* Apple II Pascal */
  118. #define mfsFSID 0x0005  /* Macintosh (flat file system) */
  119. #define hfsFSID 0x0006  /* Macintosh (hierarchical file system) */
  120. #define lisaFSID 0x0007  /* Lisa file system */
  121. #define appleCPMFSID 0x0008  /* Apple CP/M */
  122. #define charFSTFSID 0x0009  /* Character FST */
  123. #define msDOSFSID 0x000A  /* MS/DOS */
  124. #define highSierraFSID 0x000B  /* High Sierra */
  125. #define iso9660FSID 0x000C  /* ISO 9660 */
  126. #define appleShareFSID 0x000D  /* ISO 9660 */
  127.  
  128. /* FSTInfo.attributes Codes */
  129. #define characterFST 0x4000  /* character FST */
  130. #define ucFST 0x8000  /* SCM should upper case pathnames before passing them to the FST */
  131.  
  132. /* QuitRec.flags Codes */
  133. #define onStack 0x8000  /* place state information about quitting program on the quit return stack */
  134. #define restartable 0x4000  /* the quitting program is capable of being restarted from its dormant memory */
  135.  
  136. /* storageType Codes */
  137. #define seedling 0x0001  /* standard file with seedling structure */
  138. #define standardFile 0x0001  /* standard file type (no resource fork) */
  139. #define sapling 0x0002  /* standard file with sapling structure */
  140. #define tree 0x0003  /* standard file with tree structure */
  141. #define pascalRegion 0x0004  /* UCSD Pascal region on a partitioned disk */
  142. #define extendedFile 0x0005  /* extended file type (with resource fork) */
  143. #define directoryFile 0x000D  /* volume directory or subdirectory file */
  144.  
  145. /* version Codes */
  146. #define minorRelNumMask 0x00FF  /* minor release number */
  147. #define majorRelNumMask 0x7F00  /* major release number */
  148. #define finalRelNumMask 0x8000  /* final release number */
  149.  
  150. /* Other Constants */
  151. #define isFileExtended 0x8000  /* GetDirEntryGS */
  152.  
  153. /* DControl Codes */
  154. #define resetDevice 0x0000
  155. #define formatDevice 0x0001
  156. #define eject 0x0002
  157. #define setConfigParameters 0x0003
  158. #define setWaitStatus 0x0004
  159. #define setFormatOptions 0x0005
  160. #define assignPartitionOwner 0x0006
  161. #define armSignal 0x0007
  162. #define disarmSignal 0x0008
  163. #define setPartitionMap 0x0009
  164. struct GSString255 {
  165.    Word length; /* Number of Chars in text field  */
  166.    char text[255]; /*  */
  167. } ;
  168. typedef struct GSString255 GSString255, *GSString255Ptr, **GSString255Hndl;
  169. typedef GSString255Hndl *GSString255HndlPtr;
  170. struct GSString32 {
  171.    Word length; /* Number of characters in text field */
  172.    char text[32]; /*  */
  173. } ;
  174. typedef struct GSString32 GSString32, *GSString32Ptr, **GSString32Hndl;
  175. struct ResultBuf255 {
  176.    Word bufSize; /*  */
  177.    GSString255 bufString; /*  */
  178. } ;
  179. typedef struct ResultBuf255 ResultBuf255, *ResultBuf255Ptr, **ResultBuf255Hndl;
  180. typedef ResultBuf255Hndl *ResultBuf255HndlPtr ;
  181.  
  182.  
  183.  
  184. struct ResultBuf32 {
  185.    Word bufSize; /*  */
  186.    GSString32 bufString; /*  */
  187. } ;
  188. typedef struct ResultBuf32 ResultBuf32, *ResultBuf32Ptr, **ResultBuf32Hndl;
  189. struct ChangePathRecGS {
  190.    Word pCount; /*  */
  191.    GSString255Ptr pathname; /*  */
  192.    GSString255Ptr newPathname; /*  */
  193. } ;
  194. typedef struct ChangePathRecGS ChangePathRecGS, *ChangePathRecPtrGS;
  195. struct CreateRecGS {
  196.    Word pCount; /*  */
  197.    GSString255Ptr pathname; /*  */
  198.    Word access; /*  */
  199.    Word fileType; /*  */
  200.    LongWord auxType; /*  */
  201.    Word storageType; /*  */
  202.    LongWord eof; /*  */
  203.    LongWord resourceEOF; /*  */
  204. } ;
  205. typedef struct CreateRecGS CreateRecGS, *CreateRecPtrGS;
  206. struct DAccessRecGS {
  207.    Word pCount; /*  */
  208.    Word devNum; /*  */
  209.    Word code; /*  */
  210.    Pointer list; /*  */
  211.    LongWord requestCount; /*  */
  212.    LongWord transferCount; /*  */
  213. } ;
  214. typedef struct DAccessRecGS DAccessRecGS, *DAccessRecPtrGS;
  215. struct DevNumRecGS {
  216.    Word pCount;
  217.    GSString32Ptr devName;
  218.    Word devNum;
  219. } ;
  220. typedef struct DevNumRecGS DevNumRecGS, *DevNumRecPtrGS;
  221. struct DInfoRecGS {
  222.    Word pCount; /* minimum = 2 */
  223.    Word devNum;
  224.    ResultBuf32Ptr devName;
  225.    Word characteristics;
  226.    LongWord totalBlocks;
  227.    Word slotNum;
  228.    Word unitNum;
  229.    Word version;
  230.    Word deviceID;
  231.    Word headLink;
  232.    Word forwardLink;
  233.    Pointer extendedDIBPtr;
  234. } ;
  235. typedef struct DInfoRecGS DInfoRecGS, *DInfoRecPtrGS;
  236. struct DIORecGS {
  237.    Word pCount; /*  */
  238.    Word devNum; /*  */
  239.    Pointer buffer; /*  */
  240.    LongWord requestCount; /*  */
  241.    LongWord startingBlock; /*  */
  242.    Word blockSize; /*  */
  243.    LongWord transferCount; /*  */
  244. } ;
  245. typedef struct DIORecGS DIORecGS, *DIORecPtrGS;
  246. struct DirEntryRecGS {
  247.    Word pCount;
  248.    Word refNum;
  249.    Word flags;
  250.    Word base;
  251.    Word displacement;
  252.    ResultBuf255Ptr name;
  253.    Word entryNum;
  254.    Word fileType;
  255.    Longint eof;
  256.    LongWord blockCount;
  257.    TimeRec createDateTime;
  258.    TimeRec modDateTime;
  259.    Word access;
  260.    LongWord auxType;
  261.    Word fileSysID;
  262.    ResultBuf255Ptr optionList;
  263.    LongWord resourceEOF;
  264.    LongWord resourceBlocks;
  265. } ;
  266. typedef struct DirEntryRecGS DirEntryRecGS, *DirEntryRecPtrGS;
  267. struct DRenameRecGS {
  268.    Word pCount;
  269.    Word devNum;
  270.    GSString32Ptr strPtr;
  271. } ;
  272. typedef struct DRenameRecGS DRenameRecGS, *DRenameRecGSPtr;
  273. struct ExpandPathRecGS {
  274.    Word pCount;
  275.    GSString255Ptr inputPath;
  276.    ResultBuf255Ptr outputPath;
  277.    Word flags;
  278. } ;
  279. typedef struct ExpandPathRecGS ExpandPathRecGS, *ExpandPathRecPtrGS;
  280. struct FileInfoRecGS {
  281.    Word pCount;
  282.    GSString255Ptr pathname;
  283.    Word access;
  284.    Word fileType;
  285.    LongWord auxType;
  286.    Word storageType; /* must be 0 for SetFileInfo */
  287.    TimeRec createDateTime;
  288.    TimeRec modDateTime;
  289.    ResultBuf255Ptr optionList;
  290.    LongWord eof;
  291.    LongWord blocksUsed; /* must be 0 for SetFileInfo */
  292.    LongWord resourceEOF; /* must be 0 for SetFileInfo */
  293.    LongWord resourceBlocks; /* must be 0 for SetFileInfo */
  294. } ;
  295. typedef struct FileInfoRecGS FileInfoRecGS, *FileInfoRecPtrGS;
  296. struct FormatRecGS {
  297.    Word pCount; /*  */
  298.    GSString32Ptr devName; /* device name pointer */
  299.    GSString32Ptr volName; /* volume name pointer */
  300.    Word fileSysID; /* file system ID */
  301.    Word reqFileSysID; /* in;  */
  302. } ;
  303. typedef struct FormatRecGS FormatRecGS, *FormatRecPtrGS;
  304. struct FSTInfoRecGS {
  305.    Word pCount; /*  */
  306.    Word fstNum; /*  */
  307.    Word fileSysID; /*  */
  308.    ResultBuf255Ptr fstName; /*  */
  309.    Word version; /*  */
  310.    Word attributes; /*  */
  311.    Word blockSize; /*  */
  312.    LongWord maxVolSize; /*  */
  313.    LongWord maxFileSize; /*  */
  314. } ;
  315. typedef struct FSTInfoRecGS FSTInfoRecGS, *FSTInfoRecPtrGS;
  316. struct InterruptRecGS {
  317.    Word pCount;
  318.    Word intNum;
  319.    Word vrn; /* used only by BindInt */
  320.    ProcPtr intCode; /* used only by BindInt */
  321. } ;
  322. typedef struct InterruptRecGS InterruptRecGS, *InterruptRecPtrGS;
  323. struct IORecGS {
  324.    Word pCount; /*  */
  325.    Word refNum; /*  */
  326.    Pointer dataBuffer; /*  */
  327.    LongWord requestCount; /*  */
  328.    LongWord transferCount; /*  */
  329.    Word cachePriority; /*  */
  330. } ;
  331. typedef struct IORecGS IORecGS, *IORecPtrGS;
  332. struct LevelRecGS {
  333.    Word pCount; /*  */
  334.    Word level; /*  */
  335. } ;
  336. typedef struct LevelRecGS LevelRecGS, *LevelRecPtrGS;
  337. struct NameRecGS {
  338.    Word pCount; /*  */
  339.    GSString255Ptr pathname; /* full pathname or a filename depending on call */
  340. } ;
  341. typedef struct NameRecGS NameRecGS, *NameRecPtrGS;
  342. struct NotifyProcRecGS {
  343.    Word pCount; /*   */
  344.    ProcPtr procPointer; /*   */
  345. } ;
  346. typedef struct NotifyProcRecGS NotifyProcRecGS, *NotifyProcRecGSPtr;
  347. struct GetNameRecGS {
  348.    Word pCount;
  349.    ResultBuf255Ptr dataBuffer; /* full pathname or a filename depending on call */
  350. } ;
  351. typedef struct GetNameRecGS GetNameRecGS, *GetNameRecPtrGS;
  352. struct NewlineRecGS {
  353.    Word pCount; /*  */
  354.    Word refNum; /*  */
  355.    Word enableMask; /*  */
  356.    Word numChars; /*  */
  357.    Pointer newlineTable; /*  */
  358. } ;
  359. typedef struct NewlineRecGS NewlineRecGS, *NewlineRecPtrGS;
  360. struct OpenRecGS {
  361.    Word pCount;
  362.    Word refNum;
  363.    GSString255Ptr pathname;
  364.    Word requestAccess;
  365.    Word resourceNumber; /* For extended files: dataFork/resourceFork */
  366.    Word access; /* Value of file's access attribute */
  367.    Word fileType; /* Value of file's fileType attribute */
  368.    LongWord auxType;
  369.    Word storageType;
  370.    TimeRec createDateTime;
  371.    TimeRec modDateTime;
  372.    ResultBuf255Ptr optionList;
  373.    LongWord eof;
  374.    LongWord blocksUsed;
  375.    LongWord resourceEOF;
  376.    LongWord resourceBlocks;
  377. } ;
  378. typedef struct OpenRecGS OpenRecGS, *OpenRecPtrGS;
  379. struct OSShutDownRecGS {
  380.    Word pCount;
  381.    Word shutdownFlag;
  382. } ;
  383. typedef struct OSShutDownRecGS OSShutDownRecGS, *OSShutDownRecPtrGS;
  384. struct PositionRecGS {
  385.    Word pCount; /*  */
  386.    Word refNum; /*  */
  387.    LongWord position; /*  */
  388. } ;
  389. typedef struct PositionRecGS PositionRecGS, *PositionRecPtrGS;
  390. struct EOFRecGS {
  391.    Word pCount; /*  */
  392.    Word refNum; /*  */
  393.    LongWord eof; /*  */
  394. } ;
  395. typedef struct EOFRecGS EOFRecGS, *EOFRecPtrGS;
  396.  
  397. typedef struct PrefixRecGS {
  398.    Word pCount; /*  */
  399.    Word prefixNum; /*  */
  400.    union {
  401.      ResultBuf255Ptr getPrefix; /*  */
  402.      GSString255Ptr setPrefix; /*  */
  403.    } buffer;
  404.    } PrefixRecGS, *PrefixRecPtrGS;
  405. struct QuitRecGS {
  406.    Word pCount; /*  */
  407.    GSString255Ptr pathname; /* pathname of next app to run */
  408.    Word flags; /*  */
  409. } ;
  410. typedef struct QuitRecGS QuitRecGS, *QuitRecPtrGS;
  411. struct RefNumRecGS {
  412.    Word pCount;
  413.    Word refNum;
  414. } ;
  415. typedef struct RefNumRecGS RefNumRecGS, *RefnumRecPtrGS;
  416. struct GetRefNumRecGS {
  417.    Word pCount;
  418.    GSString255Ptr pathname;
  419.    Word refNum;
  420.    Word access;
  421.    Word resNum;
  422.    Boolean caseSense;
  423.    Word displacement;
  424. } ;
  425. typedef struct GetRefNumRecGS GetRefNumRecGS, *GetRefNumRecPtrGS;
  426. struct StdRefNumRecGS {
  427.    Word pCount; /*   */
  428.    Word prefixNum; /*   */
  429.    Word refNum; /*   */
  430. } ;
  431. typedef struct StdRefNumRecGS StdRefNumRecGS, *StdRefNumRecGSPtr;
  432. struct SessionStatusRecGS {
  433.    Word pCount; /* in: min = 1 */
  434.    Word status; /* out: */
  435. } ;
  436. typedef struct SessionStatusRecGS SessionStatusRecGS, *SessionStatusRecPtrGS;
  437. struct SetPositionRecGS {
  438.    Word pCount; /*  */
  439.    Word refNum; /*  */
  440.    Word base; /*  */
  441.    LongWord displacement; /*  */
  442. } ;
  443. typedef struct SetPositionRecGS SetPositionRecGS, *SetPositionRecPtrGS;
  444. struct SysPrefsRecGS {
  445.    Word pCount; /*  */
  446.    Word preferences; /*  */
  447. } ;
  448. typedef struct SysPrefsRecGS SysPrefsRecGS, *SysPrefsRecPtrGS;
  449. struct VersionRecGS {
  450.    Word pCount; /*  */
  451.    Word version; /*  */
  452. } ;
  453. typedef struct VersionRecGS VersionRecGS, *VersionRecPtrGS;
  454. struct VolumeRecGS {
  455.    Word pCount; /*  */
  456.    GSString32Ptr devName; /*  */
  457.    ResultBuf255Ptr volName; /*  */
  458.    LongWord totalBlocks; /*  */
  459.    LongWord freeBlocks; /*  */
  460.    Word fileSysID; /*  */
  461.    Word blockSize; /*  */
  462. } ;
  463. typedef struct VolumeRecGS VolumeRecGS, *VolumeRecPtrGS;
  464. struct RefInfoRecGS {
  465.    Word pCount; /*   */
  466.    Word refNum; /*   */
  467.    Word access; /*   */
  468.    ResultBuf255Ptr pathname; /*   */
  469. } ;
  470. typedef struct RefInfoRecGS RefInfoRecGS, *RefInfoRecGSPtr;
  471. #ifndef stackEntry
  472. #define stackEntry 0xE100B0
  473. #endif
  474. #ifndef sysCall
  475. extern pascal void sysCall() inline(0x0000,stackEntry); 
  476. #endif
  477.  
  478. #define AddNotifyProcGS(pBlockPtr)  sysCall(pBlockPtr,0x2034)
  479. #define BeginSessionGS(pBlockPtr)  sysCall(pBlockPtr,0x201D)
  480. #define BindIntGS(pBlockPtr)  sysCall(pBlockPtr,0x2031)
  481. #define ChangePathGS(pBlockPtr)  sysCall(pBlockPtr,0x2004)
  482. #define ClearBackupBitGS(pBlockPtr)  sysCall(pBlockPtr,0x200B)
  483. #define CloseGS(pBlockPtr)  sysCall(pBlockPtr,0x2014)
  484. #define CreateGS(pBlockPtr)  sysCall(pBlockPtr,0x2001)
  485. #define DControlGS(pBlockPtr)  sysCall(pBlockPtr,0x202E)
  486. #define DelNotifyProcGS(pBlockPtr)  sysCall(pBlockPtr,0x2035)
  487. #define DestroyGS(pBlockPtr)  sysCall(pBlockPtr,0x2002)
  488. #define DInfoGS(pBlockPtr)  sysCall(pBlockPtr,0x202C)
  489. #define DReadGS(pBlockPtr)  sysCall(pBlockPtr,0x202F)
  490. #define DRenameGS(pBlockPtr)  sysCall(pBlockPtr,0x2036)
  491. #define DStatusGS(pBlockPtr)  sysCall(pBlockPtr,0x202D)
  492. #define DWriteGS(pBlockPtr)  sysCall(pBlockPtr,0x2030)
  493. #define EndSessionGS(pBlockPtr)  sysCall(pBlockPtr,0x201E)
  494. #define EraseDiskGS(pBlockPtr)  sysCall(pBlockPtr,0x2025)
  495. #define ExpandPathGS(pBlockPtr)  sysCall(pBlockPtr,0x200E)
  496. #define FlushGS(pBlockPtr)  sysCall(pBlockPtr,0x2015)
  497. #define FormatGS(pBlockPtr)  sysCall(pBlockPtr,0x2024)
  498. #define FSTSpecific(pBlockPtr)  sysCall(pBlockPtr,0x2033)
  499. #define GetBootVolGS(pBlockPtr)  sysCall(pBlockPtr,0x2028)
  500. #define GetDevNumberGS(pBlockPtr)  sysCall(pBlockPtr,0x2020)
  501. #define GetDirEntryGS(pBlockPtr)  sysCall(pBlockPtr,0x201C)
  502. #define GetEOFGS(pBlockPtr)  sysCall(pBlockPtr,0x2019)
  503. #define GetFileInfoGS(pBlockPtr)  sysCall(pBlockPtr,0x2006)
  504. #define GetFSTInfoGS(pBlockPtr)  sysCall(pBlockPtr,0x202B)
  505. #define GetLevelGS(pBlockPtr)  sysCall(pBlockPtr,0x201B)
  506. #define GetMarkGS(pBlockPtr)  sysCall(pBlockPtr,0x2017)
  507. #define GetNameGS(pBlockPtr)  sysCall(pBlockPtr,0x2027)
  508. #define GetPrefixGS(pBlockPtr)  sysCall(pBlockPtr,0x200A)
  509. #define GetRefInfoGS(pBlockPtr)  sysCall(pBlockPtr,0x2039)
  510. #define GetRefNumGS(pBlockPtr)  sysCall(pBlockPtr,0x2038)
  511. #define GetStdRefNumGS(pBlockPtr)  sysCall(pBlockPtr,0x2037)
  512. #define GetSysPrefsGS(pBlockPtr)  sysCall(pBlockPtr,0x200F)
  513. #define GetVersionGS(pBlockPtr)  sysCall(pBlockPtr,0x202A)
  514. #define NewlineGS(pBlockPtr)  sysCall(pBlockPtr,0x2011)
  515. #define NullGS(pBlockPtr)  sysCall(pBlockPtr,0x200D)
  516. #define OpenGS(pBlockPtr)  sysCall(pBlockPtr,0x2010)
  517. #define OSShutDownGS(pBlockPtr)  sysCall(pBlockPtr,0x2003)
  518. #define QuitGS(pBlockPtr)  sysCall(pBlockPtr,0x2029)
  519. #define ReadGS(pBlockPtr)  sysCall(pBlockPtr,0x2012)
  520. #define ResetCacheGS(pBlockPtr)  sysCall(pBlockPtr,0x2026)
  521. #define SessionStatusGS(pBlockPtr)  sysCall(pBlockPtr,0x201F)
  522. #define SetEOFGS(pBlockPtr)  sysCall(pBlockPtr,0x2018)
  523. #define SetFileInfoGS(pBlockPtr)  sysCall(pBlockPtr,0x2005)
  524. #define SetLevelGS(pBlockPtr)  sysCall(pBlockPtr,0x201A)
  525. #define SetMarkGS(pBlockPtr)  sysCall(pBlockPtr,0x2016)
  526. #define SetPrefixGS(pBlockPtr)  sysCall(pBlockPtr,0x2009)
  527. #define SetSysPrefsGS(pBlockPtr)  sysCall(pBlockPtr,0x200C)
  528. #define UnbindIntGS(pBlockPtr)  sysCall(pBlockPtr,0x2032)
  529. #define VolumeGS(pBlockPtr)  sysCall(pBlockPtr,0x2008)
  530. #define WriteGS(pBlockPtr)  sysCall(pBlockPtr,0x2013)
  531. #ifndef __PRODOS__ 
  532.  
  533. #define GetSysPrefs(arg)  GetSysPrefsGS(arg)
  534. #define BeginSession(arg)  BeginSessionGS(arg)
  535. #define EndSession(arg)  EndSessionGS(arg)
  536. #define SessionStatus(arg)  SessionStatusGS(arg)
  537. #define ResetCache(arg)  ResetCacheGS(arg)
  538. #define ChangePath(arg)  ChangePathGS(arg)
  539. #define ClearBackupBit(arg)  ClearBackupBitGS(arg)
  540. #define Close(arg)  CloseGS(arg)
  541. #define Create(arg)  CreateGS(arg)
  542. #define DControl(arg)  DControlGS(arg)
  543. #define Destroy(arg)  DestroyGS(arg)
  544. #define DInfo(arg)  DInfoGS(arg)
  545. #define DRead(arg)  DReadGS(arg)
  546. #define DStatus(arg)  DStatusGS(arg)
  547. #define DWrite(arg)  DWriteGS(arg)
  548. #define EraseDisk(arg)  EraseDiskGS(arg)
  549. #define ExpandPath(arg)  ExpandPathGS(arg)
  550. #define Flush(arg)  FlushGS(arg)
  551. #define Format(arg)  FormatGS(arg)
  552. #define GetBootVol(arg)  GetBootVolGS(arg)
  553. #define GetDevNumber(arg)  GetDevNumberGS(arg)
  554. #define GetDirEntry(arg)  GetDirEntryGS(arg)
  555. #define GetEOF(arg)  GetEOFGS(arg)
  556. #define GetFileInfo(arg)  GetFileInfoGS(arg) 
  557. #define GetFSTInfo(arg)  GetFSTInfoGS(arg)
  558. #define GetLevel(arg)  GetLevelGS(arg)
  559. #define GetMark(arg)  GetMarkGS(arg)
  560. #define GetName(arg)  GetNameGS(arg)
  561. #define GetPrefix(arg)  GetPrefixGS(arg)
  562. #define GetVersion(arg)  GetVersionGS(arg)
  563. #define Newline(arg)  NewlineGS(arg)
  564. #define Null(arg)  NullGS(arg)
  565. #define Open(arg)  OpenGS(arg)
  566. #define Quit(arg)  QuitGS(arg)
  567. #define Read(arg)  ReadGS(arg)
  568. #define SetEOF(arg)  SetEOFGS(arg)
  569. #define SetFileInfo(arg)  SetFileInfoGS(arg)
  570. #define SetLevel(arg)  SetLevelGS(arg)
  571. #define SetMark(arg)  SetMarkGS(arg)
  572. #define SetPrefix(arg)  SetPrefixGS(arg)
  573. #define UnbindInt(arg)  UnbindIntGS(arg)
  574. #define Volume(arg)  VolumeGS(arg)
  575. #define Write(arg)  WriteGS(arg)
  576. #define BindInt(arg)  BindIntGS(arg)
  577.  
  578. #define ChangePathRec ChangePathRecGS 
  579. #define CreateRec CreateRecGS 
  580. #define DAccessRec DAccessRecGS 
  581. #define DevNumRec DevNumRecGS 
  582. #define DInfoRec DInfoRecGS 
  583. #define DIORec DIORecGS 
  584. #define DirEntryRec DirEntryRecGS 
  585. #define EOFRec EOFRecGS
  586. #define ExpandPathRec ExpandPathRecGS 
  587. #define FileInfoRec FileInfoRecGS 
  588. #define FormatRec FormatRecGS 
  589. #define FSTInfoRec FSTInfoRecGS 
  590. #define InterruptRec InterruptRecGS 
  591. #define IORec IORecGS 
  592. #define LevelRec LevelRecGS 
  593. #define NameRec NameRecGS
  594. #define GetNameRec GetNameRecGS 
  595. #define NewlineRec NewlineRecGS 
  596. #define OpenRec OpenRecGS 
  597. #define PositionRec PositionRecGS 
  598. #define PrefixRec PrefixRecGS 
  599. #define QuitRec QuitRecGS 
  600. #define RefNumRec RefNumRecGS 
  601. #define SetPositionRec SetPositionRecGS 
  602. #define SysPrefRec SysPrefRecGS 
  603. #define VersionRec VersionRecGS 
  604. #define VolumeRec VolumeRecGS 
  605.  
  606. #endif 
  607.  
  608.  
  609. #endif
  610.